/********************************************************************
 * PROJECT: FOLIAGE PROJECT.
 * SUPPLIER: FOLIAGE TEAM.
 ********************************************************************
 * FILE: AdvancedTask.java
 * (C) Copyright Foliage Team 2013, All Rights Reserved.
 ********************************************************************/
package org.foliage.common.structure;

/**
 * 严谨匹配的任务对象接口，定义类型匹配，连接匹配等扩展任务匹配等方法。
 * 
 * @author deathknight0718@gmail.com
 * @version 1.0.0
 */
public interface AdvancedTask extends Task {

	/**
	 * 获取该实例的任务类型号。
	 * 
	 * @return 任务类型号。
	 */
	int getType();

	/**
	 * 获取该实例的任务状态号。
	 * 
	 * @return 任务状态号。
	 */
	int getStatus();

	/**
	 * 判断该实例是否与制定的任务实例匹配。
	 * 
	 * @param task 任务实例。
	 * @return 判断结果。
	 */
	boolean isMatched(AdvancedTask task);

}
